A lithographic apparatus is a machine that applies a desired pattern onto a target portion of a substrate. Lithographic apparatus can be used, for example, in the manufacture of integrated circuits (ICs). In that circumstance, a patterning device, such as a mask, may be used to generate a circuit pattern corresponding to an individual layer of the IC, and this pattern can be imaged onto a target portion (e.g. comprising part of, one or several dies) on a substrate (e.g. a silicon wafer) that has a layer of radiation-sensitive material (resist). In general, a single substrate will contain a network of adjacent target portions that are successively exposed. Known lithographic apparatus include so-called steppers, in which each target portion is irradiated by exposing an entire pattern onto the target portion at one time, and so-called scanners, in which each target portion is irradiated by scanning the pattern through the projection beam in a given direction (the “scanning”-direction) while synchronously scanning the substrate parallel or anti-parallel to this direction.
In a factory, commonly referred to as a “fab” or “foundry”, in which semiconductor or other devices are manufactured, each lithographic apparatus is commonly grouped with a “track” comprising substrate handling devices and pre- and post-processing devices to form a “lithocell”. Each of the lithographic apparatus and the track typically have a supervisory control system which are themselves under the control of a further supervisory control system. Substrates, which may be blank or have already been processed to include one or more process or device layers, are delivered to the lithocell in lots (also referred to as batches) for processing. A lot is, in general, a group of substrates which are to processed by the lithocell in the same way and is accompanied by a “recipe” which specifies the processes to be carried out. The lot size may be arbitrary or determined by the size of carrier used to transport substrates around the fab. The recipe may include details of the resist coating to be applied, temperature and duration of pre- and post-exposure bakes, details of the pattern to be exposed and the exposure settings for that, development duration, etc. A large number of tasks must be performed to complete the recipe for a given batch and there are many possible ways these can be done, as in many cases both the track and lithographic apparatus are capable of performing multiple tasks at once, e.g. if the track includes multiple spin coaters or multipurpose stations or if the lithographic apparatus is a dual stage apparatus having measurement and exposure stations. Thus scheduling the tasks to be performed, and optimizing that schedule, e.g. to maximize throughput, is a complex task.
In most cases, on-the-fly scheduling is limited and most sequences of tasks are hard-coded in the control software of the apparatus or the supervisory control system. A more flexible approach to scheduling is to construct a tree based on tasks to be completed and their precedence relation. In such a tree, starting from an origin, branches represent possible tasks that may be carried out and lead to leaves, from which further branches represent tasks that may then be carried out, and so on. Scheduling then becomes a matter of selecting a path through the tree.
With existing scheduling methods, there remains a need for a method of automatically converting an order for work to a plan which can then be scheduled. Further there remains a need to adapt to changed circumstances, e.g. orders for additional work or exceptions in the carrying out of a schedule, preferably with minimum loss of throughput.